A call center is a facility that processes telephone calls for an organization, usually using some level of computer control. Typically, the telephone calls handled by a call center are incoming calls from present or potential customers of the organization. The incoming calls are distributed among a number of agents within the call center who are each trained to handle certain types of incoming calls. A single call center will often support a large number of different call types. For example, a call center may be set up to receive calls relating to each of a multitude of different products, product types, or product families sold by the organization. Alternatively, or in addition, a call center might handle calls relating to different services or information dissemination functions provided by the organization. Some such services/functions include: taking product orders, providing customer service, providing pricing and/or availability information, or any of a variety of other functions. Other methods for defining call types in a call center can also be used.
It is often desirable that the different call types supported by a call center be handled differently from one another by the call center. For example, some of the call types may be deemed by the corresponding organization to be more important than other call types and hence are to be given more attention or better service by the call center. Thus, a service level target is often defined for each of the different call types supported by the call center to indicate a desired level of service for the call type. However, past techniques for achieving the desired service levels for each of the call types supported by the call center have generally been inadequate. In one prior approach known as priority queuing, for example, a number of priority values are defined for different call types coming into a call center. A single call queue is then used to process calls having a variety of different call types. When a new call having a particular call type is received by the call center, the system determines the priority value associated with the new call and places the new call within a queue position based on the priority value. Thus, a call having a higher priority value is always placed in front of a call having a lower priority value in the queue. Therefore, if high priority calls are continually being received by the system, the lower priority calls within the queue can remain unanswered for an indefinite period of time. Such calls are often abandoned in frustration by corresponding callers.
Therefore, there is a need for a method and apparatus for managing calls within a call center that is capable of accurately achieving service level objectives for different call types within the call center. In addition, or alternatively, there is a need for a method and apparatus for managing calls within a call center that does not leave certain callers waiting indefinitely for their call to be answered by call center personnel.